def gcd(n,m):
    if m>n:
        return gcd(m,n)
    if m==n:
        return n
    if not n&1 and not m&1:
        return 2*gcd(n>>1,m>>1)
    elif not n&1:
        return gcd(n>>1,m)
    elif (not m&1):
        return gcd(n,m>>1)
    else:
        return gcd(n-m,m)
n,m=input().split(' ')
n=int(n)
m=int(m)
x=gcd(n,m)
print(x,n*m//x)
